Problem
最大团
Description
给出平面上个点的坐标,和一个半径为的圆心在原点的圆。
对于两个点,它们之间有连边,当且仅当它们的连线与圆不相交。
求此图的最大团。
Input
第一行两个整数和, 表示点数和圆的半径。
接下来行,每行两个整数和,表示第个点的坐标
保证每个点都严格在园外,且两两直线不与圆相切。
Output
Sample Input
1 | 6 3 |
Sample Output
1 | 4 |
HINT
对于的数据,
标签:DP
Solution
好题,非二分图的最大团是的,然而这道题有特殊性质。
从每个点向圆作切线,记下其覆盖的弧,过两个点的直线与圆相交当且仅当呈现下列两种情况:
两段弧相离
两段弧存在包含关系
于是选出的所有点所对应的弧必须两两相交但不包含,于是设第个点的弧的两端点为,最后的答案集合一定有
将所有点按值排序,则需要选出的最长上升子序列,并且要满足。
于是枚举每个点作为起点,向后,每次取最大值即可。
时间复杂度
Code
1 |
|